package com.alibaba.citrus.cr.unified.inventory.model;

import java.io.Serializable;


public class MnSapIf004DetailForCheck implements Serializable {
    private static final Long serialVersionUID = -1215830521L;
    /**
     * 物料凭证编号
     */
    private String outMaterialCertificateId;
    /**
    * 数据唯一标识
    */
    private String Item_key;

    /**
    * 物料凭证中的项目
    */
    private String outLineId;

    /**
    * 销售订单行项目
    */
    private String outSourceOrderLineId;

    /**
    * 交货单行项目
    */
    private String outDeliveryOrderLineId;

    /**
    * 调拔单的项目
    */
    private String outAllocateOrderLineId;

    /**
    * 物料编号
    */
    private String scItemId;

    /**
    * 批号
    */
    private String batchId;

    /**
    * 生产日期
    */
    private String productionTime;

    /**
    * 基本单位数量
    */
    private String baseUnitQuantity;

    /**
    * 基本计量单位
    */
    private String baseUnit;

    /**
    * 销售单位数量
    */
    private String saleUnitQuantity;

    /**
    * 销售单位
    */
    private String saleUnit;

    /**
    * 借方/贷方标识
    */
    private String dcSignal;

    /**
    * 工厂
    */
    private String factoryCode;

    /**
    * 库存地点
    */
    private String inventoryCode;

    /**
    * 移动类型
    */
    private String sapType;

    /**
    * 扩展信息
    */
    private String features;

    /**
    * 原物料凭证单号
    */
    private String ext;

    /**
    * 原物料明细行号
    */
    private String ext1;

    public String getItem_key() {
        return Item_key;
    }

    public void setItem_key(String Item_key) {
        this.Item_key = Item_key;
    }

    public String getOutLineId() {
        return outLineId;
    }

    public void setOutLineId(String outLineId) {
        this.outLineId = outLineId;
    }

    public String getOutSourceOrderLineId() {
        return outSourceOrderLineId;
    }

    public void setOutSourceOrderLineId(String outSourceOrderLineId) {
        this.outSourceOrderLineId = outSourceOrderLineId;
    }

    public String getOutDeliveryOrderLineId() {
        return outDeliveryOrderLineId;
    }

    public void setOutDeliveryOrderLineId(String outDeliveryOrderLineId) {
        this.outDeliveryOrderLineId = outDeliveryOrderLineId;
    }

    public String getOutAllocateOrderLineId() {
        return outAllocateOrderLineId;
    }

    public void setOutAllocateOrderLineId(String outAllocateOrderLineId) {
        this.outAllocateOrderLineId = outAllocateOrderLineId;
    }

    public String getScItemId() {
        return scItemId;
    }

    public void setScItemId(String scItemId) {
        this.scItemId = scItemId;
    }

    public String getBatchId() {
        return batchId;
    }

    public void setBatchId(String batchId) {
        this.batchId = batchId;
    }

    public String getProductionTime() {
        return productionTime;
    }

    public void setProductionTime(String productionTime) {
        this.productionTime = productionTime;
    }

    public String getBaseUnitQuantity() {
        return baseUnitQuantity;
    }

    public void setBaseUnitQuantity(String baseUnitQuantity) {
        this.baseUnitQuantity = baseUnitQuantity;
    }

    public String getBaseUnit() {
        return baseUnit;
    }

    public void setBaseUnit(String baseUnit) {
        this.baseUnit = baseUnit;
    }

    public String getSaleUnitQuantity() {
        return saleUnitQuantity;
    }

    public void setSaleUnitQuantity(String saleUnitQuantity) {
        this.saleUnitQuantity = saleUnitQuantity;
    }

    public String getSaleUnit() {
        return saleUnit;
    }

    public void setSaleUnit(String saleUnit) {
        this.saleUnit = saleUnit;
    }

    public String getDcSignal() {
        return dcSignal;
    }

    public void setDcSignal(String dcSignal) {
        this.dcSignal = dcSignal;
    }

    public String getFactoryCode() {
        return factoryCode;
    }

    public void setFactoryCode(String factoryCode) {
        this.factoryCode = factoryCode;
    }

    public String getInventoryCode() {
        return inventoryCode;
    }

    public void setInventoryCode(String inventoryCode) {
        this.inventoryCode = inventoryCode;
    }

    public String getSapType() {
        return sapType;
    }

    public void setSapType(String sapType) {
        this.sapType = sapType;
    }

    public String getFeatures() {
        return features;
    }

    public void setFeatures(String features) {
        this.features = features;
    }

    public String getExt() {
        return ext;
    }

    public void setExt(String ext) {
        this.ext = ext;
    }

    public String getExt1() {
        return ext1;
    }

    public void setExt1(String ext1) {
        this.ext1 = ext1;
    }

    public String getOutMaterialCertificateId() {
        return outMaterialCertificateId;
    }

    public void setOutMaterialCertificateId(String outMaterialCertificateId) {
        this.outMaterialCertificateId = outMaterialCertificateId;
    }

    public MnSapIf004DetailForCheck() {
    }

    MnSapIf004DetailForCheck(Builder builder) {
        this.Item_key = builder.Item_key;
        this.outLineId = builder.outLineId;
        this.outSourceOrderLineId = builder.outSourceOrderLineId;
        this.outDeliveryOrderLineId = builder.outDeliveryOrderLineId;
        this.outAllocateOrderLineId = builder.outAllocateOrderLineId;
        this.scItemId = builder.scItemId;
        this.batchId = builder.batchId;
        this.productionTime = builder.productionTime;
        this.baseUnitQuantity = builder.baseUnitQuantity;
        this.baseUnit = builder.baseUnit;
        this.saleUnitQuantity = builder.saleUnitQuantity;
        this.saleUnit = builder.saleUnit;
        this.dcSignal = builder.dcSignal;
        this.factoryCode = builder.factoryCode;
        this.inventoryCode = builder.inventoryCode;
        this.sapType = builder.sapType;
        this.features = builder.features;
        this.ext = builder.ext;
        this.ext1 = builder.ext1;
    }

    public static Builder builder() {
        return new Builder();
    }

    public static class Builder {

        /**
        * 数据唯一标识
        */
        private String Item_key;

        /**
        * 物料凭证中的项目
        */
        private String outLineId;

        /**
        * 销售订单行项目
        */
        private String outSourceOrderLineId;

        /**
        * 交货单行项目
        */
        private String outDeliveryOrderLineId;

        /**
        * 调拔单的项目
        */
        private String outAllocateOrderLineId;

        /**
        * 物料编号
        */
        private String scItemId;

        /**
        * 批号
        */
        private String batchId;

        /**
        * 生产日期
        */
        private String productionTime;

        /**
        * 基本单位数量
        */
        private String baseUnitQuantity;

        /**
        * 基本计量单位
        */
        private String baseUnit;

        /**
        * 销售单位数量
        */
        private String saleUnitQuantity;

        /**
        * 销售单位
        */
        private String saleUnit;

        /**
        * 借方/贷方标识
        */
        private String dcSignal;

        /**
        * 工厂
        */
        private String factoryCode;

        /**
        * 库存地点
        */
        private String inventoryCode;

        /**
        * 移动类型
        */
        private String sapType;

        /**
        * 扩展信息
        */
        private String features;

        /**
        * 原物料凭证单号
        */
        private String ext;

        /**
        * 原物料明细行号
        */
        private String ext1;


        public Builder Item_key(String Item_key) {
            this.Item_key = Item_key;
            return this;
        }

        public Builder outLineId(String outLineId) {
            this.outLineId = outLineId;
            return this;
        }

        public Builder outSourceOrderLineId(String outSourceOrderLineId) {
            this.outSourceOrderLineId = outSourceOrderLineId;
            return this;
        }

        public Builder outDeliveryOrderLineId(String outDeliveryOrderLineId) {
            this.outDeliveryOrderLineId = outDeliveryOrderLineId;
            return this;
        }

        public Builder outAllocateOrderLineId(String outAllocateOrderLineId) {
            this.outAllocateOrderLineId = outAllocateOrderLineId;
            return this;
        }

        public Builder scItemId(String scItemId) {
            this.scItemId = scItemId;
            return this;
        }

        public Builder batchId(String batchId) {
            this.batchId = batchId;
            return this;
        }

        public Builder productionTime(String productionTime) {
            this.productionTime = productionTime;
            return this;
        }

        public Builder baseUnitQuantity(String baseUnitQuantity) {
            this.baseUnitQuantity = baseUnitQuantity;
            return this;
        }

        public Builder baseUnit(String baseUnit) {
            this.baseUnit = baseUnit;
            return this;
        }

        public Builder saleUnitQuantity(String saleUnitQuantity) {
            this.saleUnitQuantity = saleUnitQuantity;
            return this;
        }

        public Builder saleUnit(String saleUnit) {
            this.saleUnit = saleUnit;
            return this;
        }

        public Builder dcSignal(String dcSignal) {
            this.dcSignal = dcSignal;
            return this;
        }

        public Builder factoryCode(String factoryCode) {
            this.factoryCode = factoryCode;
            return this;
        }

        public Builder inventoryCode(String inventoryCode) {
            this.inventoryCode = inventoryCode;
            return this;
        }

        public Builder sapType(String sapType) {
            this.sapType = sapType;
            return this;
        }

        public Builder features(String features) {
            this.features = features;
            return this;
        }

        public Builder ext(String ext) {
            this.ext = ext;
            return this;
        }

        public Builder ext1(String ext1) {
            this.ext1 = ext1;
            return this;
        }

        public MnSapIf004DetailForCheck build() {
            return new MnSapIf004DetailForCheck(this);
        }
    }
}
